package com.sharainy.service;

import com.sharainy.pojo.Area;

import java.util.List;
import java.util.Map;

public interface AreaService {
    /**
     * 根据公司id查询区域信息
     * @param company_id
     * @return
     */
    List<Area> selectLevel1Area(int company_id);
    /**
     * 根据上级区域id查询区域
     * @param parent_node
     * @return
     */
    List<Area> selectLevel2Area(int parent_node);
    /**
     * 根据上级区域id查询区域
     * @param parent_node
     * @return
     */
    List<Area> selectLevel3Area(int parent_node);

    /**
     *根据id查询一级区域
     * @param id
     * @return
     */
    String getLevel1NameById(String id);
    /**
     *根据id查询二级区域
     * @param id
     * @return
     */
    String getLevel2NameById(String id);
    /**
     *根据id查询三级区域
     * @param id
     * @return
     */
    String getLevel3NameById(String id);

    /**
     * 删除一级区域
     * @param id
     */
    void deleteLevel1(String id);
    /**
     * 删除二级区域
     * @param id
     */
    void deleteLevel2(String id);
    /**
     * 删除三级区域
     * @param id
     */
    void deleteLevel3(String id);
    /**
     * 根据名称查找区域1是否存在
     * @param map
     * @return
     */
    Area getLevel1ByName(Map<String, String> map);
    /**
     * 根据名称查找区域2是否存在
     * @param map
     * @return
     */
    Area getLevel2ByName(Map<String, String> map);
    /**
     * 根据名称查找区域3是否存在
     * @param map
     * @return
     */
    Area getLevel3ByName(Map<String, String> map);
    /**
     *添加区域信息
     * @param arealevel1
     * @param arealevel2
     * @param arealevel3
     * @param companyId
     */
    void addAllArea(String arealevel1, String arealevel2, String arealevel3, int companyId) throws Exception;

    /**
     *
     * @param area
     */
    void updateLevel1Area(Area area);
    /**
     *
     * @param area
     */
    void updateLevel2Area(Area area);
    /**
     *
     * @param area
     */
    void updateLevel3Area(Area area);
}
